The invention relates to communications systems, and more particularly, to a method and apparatus for providing time synchronization of data transmitted between devices of a bus type local area network, including hierarchical networks.
On a bus type local area network messages ideally appear at receiving nodes as soon as transmitted, without variable delays caused by intermediary devices (propagation delays are not generally significant). Bus type networks include networks having bounded propagation delays such as induced by repeaters, and further including hierarchical network structures. Typically, however, such networks are software-driven and have variable/unpredictable delays in the network hardware and software between the time messages are queued for transmission and actually transmitted, and between the time messages are received and actually processed. This lack of determinism prevents synchronization or time broadcast via messages containing high-precision clock times. Such networks do not provide for high-resolution clock synchronization in their standard definitions. Additionally, the available network interface products do not provide this feature, nor the ability to recognize a predefined, unique, synchronization message, to enable external synchronization processing.
Thus there is a need to provide, in bus type networks, a technique for determining the difference between the time messages are queued and actually transmitted, and the difference between the time messages are received and actually processed.